Multi-axis machine tool and methods of controlling the same

ABSTRACT

One embodiment of the present invention can be characterized as a method for controlling a multi-axis machine tool that includes obtaining a preliminary rotary actuator command (wherein the rotary actuator command has frequency content exceeding a bandwidth of a rotary actuator), generating a processed rotary actuator command based, at least in part, on the preliminary rotary actuator command, the processed rotary actuator command having frequency content within a bandwidth of the rotary actuator and generating a first linear actuator command and a second linear actuator command based, at least in part, on the processed rotary actuator command. The processed rotary actuator command can be output to the rotary actuator, the first linear actuator command can be output to a first linear actuator and the second linear actuator command can be output to a second linear actuator.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is a continuation application of the U.S. patent application Ser.No. 15/188,496, filed Jun. 21, 2016, which claims the benefit of U.S.Provisional Application No. 62/183,009, filed Jun. 22, 2015, and U.S.Provisional Application No. 62/281,967, filed Jan. 22, 2016, each ofwhich is incorporated by reference in its entirety.

TECHNICAL FIELD

Embodiments of the present invention relate generally to systems andmethods for enabling automated motion control, in which the position ormovement of a tool in a multi-axis machine tool is controlled using oneor more actuators.

BACKGROUND

Motion control is an important aspect in robotic systems (e.g.,involving articulated robot configurations, Cartesian robotconfigurations, cylindrical robot configurations, polar robotconfigurations, delta robot configurations, or the like or combinationsthereof), numerical control (NC) machines, computerized NC (CNC)machines, and the like (generically and collectively referred to hereinas “machine tools,” which can be adapted to process a workpiece). Thesemachine tools typically include one or more controllers, one or moreactuators, one or more sensors (each provided as a discrete devices, orembedded in an actuator), a tool holder or tool head, and various datacommunication subsystems, operator interfaces, and the like. Dependingon the type and number of actuators included, a machine tool may beprovided as a “multi-axis” machine tool, having multiple,independently-controllable axes of motion.

The continuing market need for higher productivity in machining andother automation applications has led to the increasing use of machinetools with various types of actuators, sensors and associatedcontrollers. In some cases, a multi-axis machine tool (also referred toherein as a “hybrid multi-axis machine tool”) may be equipped withmultiple actuators capable of imparting movement along the samedirection, but at different bandwidths. Generally, one actuator (e.g., afirst actuator) can be characterized as having a higher bandwidth thananother actuator (e.g., a second actuator) if the first actuator canimpart movement in response to a command signal having a given spectralor frequency content more accurately than the second actuator can impartmovement in response to the same command signal. Often, however, therange of motion over which the first actuator can impart movement willbe less than range of motion over which the second actuator can impartmovement.

Deciding which components of motion should be allocated betweenrelatively-high and relatively-low bandwidth actuators of a hybridmulti-axis machine tool is not an easy task. A common strategy involvesoperating one or more relatively-low bandwidth actuators to move aworkpiece to be processed and/or to move one or more relatively-highbandwidth actuators to a desired location or “zone” where the workpieceis to be processed, and then hold the position of relatively-lowbandwidth actuator(s) constant while operating the relatively-highbandwidth actuator(s) during processing of the workpiece. Thereafter,the relatively-low bandwidth actuator(s) are operated to move theworkpiece and/or the relatively-high bandwidth actuator(s) to another“zone” where the workpiece is to be processed. This “zone-by-zone”approach (also referred to as a “step-and-repeat” approach) to motioncontrol is undesirable because it significantly limits throughput andflexibility of the hybrid multi-axis machine tool. It can also bedifficult to appropriately or beneficially define the various “zones” ofthe workpiece where the relatively-high bandwidth actuator(s) can beoperated.

U.S. Pat. No. 8,392,002, which is incorporated herein by reference inits entirety, is understood to address the above-mentioned problemsassociated with implementing the “zone-by-zone” approach by processing apart description program to decompose a tool tip trajectory (on thebasis of frequency) defined in the part description program intodifferent sets of position control data appropriate for therelatively-low and relatively-high bandwidth actuators of a hybridmulti-axis machine tool. However, and as acknowledged in U.S. Pat. No.8,392,002, when the hybrid multi-axis machine tool is configured to holda workpiece using 5-axis CNC manipulator with two rotary axes riding ona 3-axis Cartesian stage, and includes relatively-high bandwidthactuators to move a tool tip in the 3 Cartesian axes, use of thefrequency-based decomposition approach can result in errors in theangles associated with the rotary axes.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram schematically illustrating a control systemfor controlling a multi-axis machine tool according to one embodiment.

FIG. 2 schematically illustrates a workpiece positioning assemblyaccording to one embodiment of the present invention.

FIG. 3 schematically illustrates a tool tip positioning assemblyaccording to one embodiment of the present invention.

FIG. 4 is a block diagram schematically illustrating a control systemfor controlling a multi-axis machine tool according to anotherembodiment.

FIG. 5 schematically illustrates a portion of a tool tip positioningassembly according to one embodiment of the present invention.

SUMMARY

One embodiment of the present invention can be characterized as a methodfor controlling a multi-axis machine tool that is configured to processa workpiece using a tool. The multi-axis machine tool can include arotary actuator configured to impart relative movement between the tooland the workpiece about a first axis, a first linear actuator configuredto impart relative movement between the tool and the workpiece along asecond axis, a second linear actuator configured to impart relativemovement between the tool and the workpiece along a third axis and acontroller operatively coupled to the rotary actuator, the first linearactuator and the second linear actuator. The method can includereceiving, at the controller, a preliminary rotary actuator command(wherein the rotary actuator command has frequency content exceeding abandwidth of the rotary actuator), generating a processed rotaryactuator command based, at least in part, on the preliminary rotaryactuator command, the processed rotary actuator command having frequencycontent within a bandwidth of the rotary actuator and generating a firstlinear actuator command and a second linear actuator command based, atleast in part, on the processed rotary actuator command. The processedrotary actuator command can be output to the rotary actuator, the firstlinear actuator command can be output to the first linear actuator andthe second linear actuator command can be output to the second linearactuator.

Another embodiment of the present invention can be characterized as amulti-axis machine tool that includes a tool configured to process aworkpiece, a first rotary actuator configured to impart relativemovement between the tool and the workpiece about a first axis, a firstlinear actuator configured to impart relative movement between the tooland the workpiece along a second axis, a second linear actuatorconfigured to impart relative movement between the tool and theworkpiece along a third axis and a controller operatively coupled to therotary actuator, the first linear actuator and the second linearactuator. The controller can be configured receive a preliminary rotaryactuator command, wherein the preliminary rotary actuator command hasfrequency content exceeding a bandwidth of the rotary actuator, generatea processed rotary actuator command based, at least in part, on thepreliminary rotary actuator command (wherein the processed rotaryactuator command has frequency content within a bandwidth of the rotaryactuator), generate a first linear actuator command and a second linearactuator command based, at least in part, on the processed rotaryactuator command, output the processed rotary actuator command to therotary actuator, output the first linear actuator command to the firstlinear actuator and output the second linear actuator command to thesecond linear actuator.

Another embodiment of the present invention can be characterized as amulti-axis machine tool that includes: a laser source configured togenerate a beam of laser light; a tool tip positioning assemblyincluding a scan lens configured to focus the beam of laser lightthereby producing a focused beam of laser light having a beam waist,wherein the tool tip positioning assembly further includes at least oneactuator to move the scan lens along at least one axis and at least onepositioner arranged between the laser source and the scan lens, whereinthe at least one positioner is operative to move the beam waist along atleast one axis, wherein the tool tip positioning assembly includes atleast one selected from the group consisting of an acousto-opticdeflector (AOD) system, a microelectromechanical systems (MEMS) mirrorsystem and an adaptive optical (AO) system; a workpiece positioningassembly configured to position the workpiece in a path along which thefocused beam of laser light is propagatable, wherein the workpiecepositioning assembly is further operative to rotate the workpiece aboutat least one axis and translate the workpiece along at least one axis;and a controller operatively coupled to the laser source, the workpiecepositioning assembly, and the tool tip positioning assembly andconfigured to control an operation of the laser source, the workpiecepositioning assembly, and the tool tip positioning assembly.

DETAILED DESCRIPTION

Example embodiments are described herein with reference to theaccompanying drawings. Unless otherwise expressly stated, in thedrawings the sizes, positions, etc., of components, features, elements,etc., as well as any distances therebetween, are not necessarily toscale, but are exaggerated for clarity.

The terminology used herein is for the purpose of describing particularexample embodiments only and is not intended to be limiting. As usedherein, the singular forms “a,” “an” and “the” are intended to includethe plural forms as well, unless the context clearly indicatesotherwise. It should be recognized that the terms “comprises” and/or“comprising,” when used in this specification, specify the presence ofstated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, integers, steps, operations, elements, components,and/or groups thereof. Unless otherwise specified, a range of values,when recited, includes both the upper and lower limits of the range, aswell as any sub-ranges therebetween. Unless indicated otherwise, termssuch as “first,” “second,” etc., are only used to distinguish oneelement from another. For example, one actuator could be termed a “firstactuator” and similarly, another node could be termed a “secondactuator”, or vice versa. The section headings used herein are fororganizational purposes only and are not to be construed as limiting thesubject matter described.

Unless indicated otherwise, the term “about,” “thereabout,” etc., meansthat amounts, sizes, formulations, parameters, and other quantities andcharacteristics are not and need not be exact, but may be approximateand/or larger or smaller, as desired, reflecting tolerances, conversionfactors, rounding off, measurement error and the like, and other factorsknown to those of skill in the art.

Spatially relative terms, such as “below,” “beneath,” “lower,” “above,”and “upper,” and the like, may be used herein for ease of description todescribe one element or feature's relationship to another element orfeature, as illustrated in the FIGS. It should be recognized that thespatially relative terms are intended to encompass differentorientations in addition to the orientation depicted in the FIGS. Forexample, if an object in the FIGS. is turned over, elements described as“below” or “beneath” other elements or features would then be oriented“above” the other elements or features. Thus, the exemplary term “below”can encompass both an orientation of above and below. An object may beotherwise oriented (e.g., rotated 90 degrees or at other orientations)and the spatially relative descriptors used herein may be interpretedaccordingly.

Like numbers refer to like elements throughout. Thus, the same orsimilar numbers may be described with reference to other drawings evenif they are neither mentioned nor described in the correspondingdrawing. Also, even elements that are not denoted by reference numbersmay be described with reference to other drawings.

It will be appreciated that many different forms and embodiments arepossible without deviating from the spirit and teachings of thisdisclosure and so this disclosure should not be construed as limited tothe example embodiments set forth herein. Rather, these examples andembodiments are provided so that this disclosure will be thorough andcomplete, and will convey the scope of the disclosure to those skilledin the art.

I. Overview

Embodiments described herein can be generally characterized aspertaining to a method for controlling a multi-axis machine tool that isconfigured to process a workpiece. Examples of multi-axis machine toolsthat may be controlled according to embodiments described herein includerouters, milling machines, plasma cutting machines, electrical dischargemachining (EDM) systems, laser cutting machines, laser marking machines,laser drilling machines, laser engraving machines, remote laser weldingrobots, 3D printers, waterjet cutters, abrasivejet cutters, and thelike. Thus, the multi-axis machine tool can be characterized as beingconfigured to physically contact the workpiece with a mechanicalstructure such as a router bit, a drill bit, a tool bit, a grinding bit,a blade, etc., to remove, cut, polish, roughen, etc., one or morematerials from which the workpiece is formed. Additionally, oralternatively, the multi-axis machine tool can be characterized as beingconfigured to direct energy (e.g., in the form of laser light generatedby a laser source, heat generated by a torch, an ion beam or an electronbeam generated from an ion or electron source, or the like or anycombination thereof), direct a stream or jet of matter (e.g., water,air, sand or other abrasive particles, paint, metallic powder, or thelike or any combination thereof), or the like or any combinationthereof, to remove, cut, drill, polish, roughen, heat, melt, vaporize,ablate, crack, discolor, foam, or otherwise modify or alter one or moreproperties or characteristics (e.g., chemical composition, crystalstructure, electronic structure, microstructure, nanostructure, density,viscosity, index of refraction, magnetic permeability, relativepermittivity, etc.) of one or more materials from which the workpiece isformed. Such materials may be present at an exterior surface of theworkpiece prior to or during workpiece processing, or may be locatedwithin the workpiece (i.e., not present at an exterior surface of theworkpiece) prior to or during workpiece processing.

Regardless of how the workpiece is processed, any mechanism that is usedto effect the processing of a workpiece (e.g., any of the aforementionedmechanical structures, any directed energy, directed streams or jets ofmatter, or the like, or any combination thereof) is herein referred toas a “tool.” The portion or portions of the tool that physically contactthe workpiece or that otherwise interact with the workpiece (e.g., viaabsorption of heat or electromagnetic radiation within the workpiece, byconversion of kinetic energy of incident electrons or ions into heatwithin the workpiece, by workpiece erosion, etc.) are hereinindividually and collectively referred to as the “tool tip,” and anyregion of the workpiece that is ultimately processed by the tool (e.g.,at the tool tip) is herein referred to as the “tooling region.” Inembodiments in which the tool is a mechanical structure that isrotatable about an axis that intersects the workpiece (e.g., as with arouter bit, a drill bit, etc.), or in which the tool is energy or astream or jet of matter directed onto the workpiece along an axis thatintersects the workpiece, an angle of such an axis relative to theportion of the surface of the workpiece intersected by the axis isherein referred to as a “tooling angle.”

The multi-axis machine tool includes one or more actuators to positionthe tool tip, to position the workpiece, to move the tool tip relativeto the workpiece, to move the workpiece relative to the tool tip, or anycombination thereof. Thus, the positioning of the tooling region on orwithin the workpiece can be changed upon imparting relative movementbetween the tool tip and the workpiece. Each actuator may be arranged orotherwise configured to position the tooling region or otherwise impartrelative movement between the tooling region and the workpiece along atleast one linear axis, along at least one rotary axis, or anycombination thereof. As is known in the art, examples of linear axesinclude an X-axis, a Y-axis (orthogonal to the X-axis) and a Z-axis(orthogonal to the X- and Y-axes), and examples of rotary axes includean A-axis (i.e., defining rotation about an axis parallel to theX-axis), a B-axis (i.e., defining rotation about an axis parallel to theY-axis) and a C-axis (i.e., defining rotation about an axis parallel tothe Z-axis).

Actuators arranged or configured to position the tooling region orotherwise impart relative movement between the tooling region and theworkpiece along a linear axis may be generally referred to as “linearactuators.” Actuators arranged or configured to position the toolingregion or otherwise impart relative movement between the tooling regionand the workpiece along a rotary axis may be generally referred to as“rotary actuators.” Examples of linear actuators that may be includedwithin the multi-axis machine tool include one or more X-axis actuators(i.e., actuators arranged or configured to impart motion along theX-axis), one or more Y-axis actuators (i.e., actuators arranged orconfigured to impart motion along the Y-axis) and one or more Z-axisactuators (i.e., actuators arranged or configured to impart motion alongthe Z-axis), or any combination thereof. Examples of rotary actuatorsthat may be included within the multi-axis machine tool include one ormore A-axis actuators (i.e., actuators arranged or configured to impartmotion along the A-axis), one or more B-axis actuators (i.e., actuatorsarranged or configured to impart motion along the B-axis) and one ormore C-axis actuators (i.e., actuators arranged or configured to impartmotion along the C-axis), or any combination thereof.

The multi-axis machine can be characterized as a“spectrally-complementary” multi-axis machine tool, or as a“non-spectrally-complementary” multi-axis machine tool. Aspectrally-complementary multi-axis machine tool includes one or moresets of redundant actuators capable of imparting movement along the sameaxis, but at different bandwidths. A non-spectrally-complementarymulti-axis machine tool does not include any sets of redundantactuators.

The multi-axis machine tool may be characterized as an“axially-complementary” multi-axis machine tool or as a “non-axiallycomplementary” multi-axis machine tool. An axially-complementarymulti-axis machine tool has a set of axially-complementary actuatorsincluding at least one rotary actuator configured to position the tooltip and/or the workpiece, or impart movement to the tool tip and/or theworkpiece, along at least one rotary axis, and at least one linearactuator configured to position the tool tip and/or the workpiece, orimpart movement to the tool tip and/or the workpiece, along at least onelinear axis. In an axially-complementary multi-axis machine tool, atleast one rotary axis about which the tool and/or workpiece is rotatableis not parallel to at least one linear axis along which the tool and/orworkpiece can be translated. For example, a set of axially-complementaryactuators may include a rotary actuator configured to impart motionalong the B-axis, and at least one linear actuator configured to impartmotion along the X-axis, along the Z-axis, or along the X- and Z-axes.In another example, a set of axially-complementary actuators may includea rotary actuator configured to impart motion along the B-axis, and atleast one rotary actuator configured to impart motion along the C-axis,and at least one linear actuator configured to impart motion along theX-axis, along the Z-axis, or along the X- and Z-axes. Generally,however, a set of axially-complementary actuators can be characterizedas being non-redundant with one another. A non-axially-complementarymulti-axis machine tool does not include a set of axially-complementaryactuators. It should be recognized that either aspectrally-complementary multi-axis machine tool or anon-spectrally-complementary multi-axis machine tool can be configuredas an axially-complementary multi-axis machine tool or as anon-axially-complementary multi-axis machine tool.

Generally, actuators of the multi-axis machine tool are driven inresponse to actuator commands that are obtained, or otherwise derivedfrom, a computer file or a computer program. In an embodiment in whichan actuator command is derived from a computer file or a computerprogram, such actuator command may be interpolated from a trajectory (ora component of the trajectory) that is defined in a computer file or bya computer program. The trajectory can define a sequence of tool tipand/or workpiece positions and/or movements (e.g., along one or morespatial axes), that describe how the tooling region is to be positioned,oriented, moved, etc., during processing of the workpiece by themulti-axis machine tool.

Generally, different actuator commands can correspond to different axialpositions or movements, whereby a “linear actuator command” is anactuator command corresponding to a linear component of position ormovement and a “rotary actuator command” is an actuator commandcorresponding to a rotational component of position or movement. Inparticular, an “X-axis actuator command” can correspond to a linearcomponent of position or movement along an X-axis, a “Y-axis actuatorcommand” can correspond to a linear component of position or movementalong a Y-axis (where the Y-axis is orthogonal to the X-axis), a “Z-axisactuator command” can correspond to a linear component of position ormovement along a Z-axis (where the Z-axis is orthogonal to the Y-axis),an “A-axis actuator command” can correspond to a rotational component ofposition or movement along an “A-axis” (A-axis rotational motioncharacterizes rotation about an axis parallel to the X-axis), a “B-axisactuator command” can correspond to a rotational component of positionor movement along a “B-axis” (B-axis rotational motion characterizesrotation about an axis parallel to the Y-axis), and a “C-axis actuatorcommand” can correspond to a rotational component of position ormovement along a “C-axis” (C-axis rotational motion characterizesrotation about an axis parallel to the Z-axis).

As used herein, the term “actuator command” refers to an electricalsignal characterized by an amplitude that changes over time and can,thus, be characterized in terms of what is known in the art as“frequency content.” Typically, an actuator of the multi-axis machinetool will be characterized by one or more constraints (e.g., a velocityconstraint, an acceleration constraint, a jerk constraint, etc.) thatlimits the bandwidth of the actuator. As used herein, the “bandwidth” ofan actuator refers to the ability of actuator to accurately or reliablyreact or respond to an actuator command (or a portion of the actuatorcommand) having frequency content exceeding a threshold frequencyassociated with the actuator. It should be recognized that the thresholdfrequency for any particular actuator can vary depending upon the typeof the particular actuator, the specific construction of the particularactuator, the mass of the particular actuator, the mass of any objectsattached to or movable by the particular actuator, and the like. Forexample, threshold frequencies for types of actuators such as servomotors, stepper motors, hydraulic cylinders, etc. may be the same ordifferent from one another (as is known in the art), but are generallyless than threshold frequencies for types of actuators such asgalvanometers, voice-coil motors, piezoelectric actuators, electron beammagnetic deflectors, magnetostrictive actuators, etc. (which, as isknown in the art, may be the same as, or different from, each other).Depending on the manner in which they are configured, a rotary actuatorcan have a threshold frequency that is less than that of a linearactuator.

Ultimately, an actuator command is output to a corresponding actuator ofthe multi-axis machine tool, wherein each actuator is operative toposition or move the tool tip and/or the workpiece along an axis thatcorresponds to the component of position or movement associated with thereceived actuator command. For example, an X-axis actuator command willultimately be output to a linear actuator arranged or configured toposition or move the tool tip and/or workpiece along the X-axis, aB-axis actuator command will ultimately be output to a rotary actuatorarranged or configured to position or move the tool tip and/or workpiecealong the B-axis (i.e., to rotate the tool tip and/or workpiece aboutthe Y-axis), etc. If a trajectory describes a movement that can bedecomposed into two or more components of movement (e.g., concurrentmotion in two or more of the X-, Y-, Z-, A-, B- or C-axes), then suchcomponents of motion can be characterized as being “associated” with oneanother. Actuator commands that correspond to associated components ofmotion described by a trajectory can, likewise, be characterized asbeing “associated” with one another. When actuator commands are outputto the actuators in a synchronized or otherwise coordinated manner, theactuators essentially react or respond by imparting relative movementbetween the tool tip and the workpiece in manner that moves the toolingregion along a path that matches or otherwise corresponds to the desiredtrajectory.

Some general embodiments concerning the generation and use of certainsets of actuator commands (i.e., “spectrally-complementary actuatorcommands” and “axially-complementary actuator commands”) discussed inthe Sections below. While the two sets of actuator commands aregenerally described as being separately generated and used, it should berecognized that the two sets of actuator commands can be generated andused together in a combined manner. Some examples of combined generationand use of the two sets of actuator commands will be described ingreater detail with respect to FIGS. 1 to 4.

A. Embodiments Concerning Actuator Commands for Spectrally-ComplementaryMulti-Axis Machine Tools, Generally

In an embodiment in which the multi-axis machine tool is a hybridmulti-axis machine tool, a set of spectrally-complementary actuatorcommands may be output to a corresponding set of redundant actuators.Within a set of spectrally-complementary actuator commands, thefrequency content of one of the actuator commands (e.g., a firstactuator command) will be higher than the frequency content of anotherone of the actuator commands (e.g., a second actuator command), and thefirst actuator command will ultimately be output to a relatively-highbandwidth actuator in the set of redundant actuators (e.g., capable ofaccurately or reliably reacting or responding to the firstspectrally-complementary actuator commands) while the second actuatorcommand will ultimately be output to a relatively-low bandwidth actuatorin the set of redundant actuators (e.g., capable of more accurately orreliably reacting or responding to the second frequency command than tothe first frequency command).

The set of spectrally-complementary actuator commands can be generatedin any suitable manner. For example, the set of spectrally-complementaryactuator commands can be generated by processing an actuator command(e.g., describing a position or movement along a single axis, such asthe X-, Y-, Z-, A-, B- or C-axis, or the like) obtained or otherwisederived from a computer file or a computer program as discussed above.In this case, such an actuator command is also referred to as a“preliminary actuator command,” and has a frequency content spanning apreliminary range of frequencies. The preliminary range of frequenciesmay include non-negligible frequency content at one or more frequenciesthat exceeds the threshold frequency of at least one actuator in the setof redundant actuators. The preliminary actuator command may beprocessed to create a set of spectrally-complementary actuator commands.

Generally, each spectrally-complementary actuator command has afrequency content spanning a sub-range of frequencies that is less thanand within the preliminary range. Specifically, the frequency content ofeach actuator command in the set of spectrally-complementary actuatorcommands includes non-negligible frequency content at one or morefrequencies that does not exceed the threshold frequency of acorresponding actuator in the set of redundant actuators. For example,within a set of spectrally-complementary actuator commands, thefrequency content of one of the spectrally-complementary actuatorcommands (e.g., a first spectrally-complementary actuator command to beultimately output to a first actuator in the set of redundant actuators)will span a first sub-range of frequencies and the frequency content ofanother of the spectrally-complementary actuator commands (e.g., asecond spectrally-complementary actuator command to be ultimately outputto a second actuator in the set of redundant actuators) will span asecond sub-range of frequencies. In one embodiment, an average frequencyof the first sub-range may be less than, greater than or equal to anaverage frequency of the second sub-range. The extent of the firstsub-range may be greater than, less than, or equal to the extent of thesecond sub-range. The first sub-range may overlap, adjoin, or be spacedapart from the second sub-range.

In some embodiments, processing of the preliminary actuator command caninclude applying one or more suitable filters to the preliminaryactuator command (or another command derived from the preliminaryactuator command), by modifying the preliminary actuator command (oranother command derived from the preliminary actuator command) accordingto one or more suitable algorithms, by decimating the preliminaryactuator command (or another command derived from the preliminaryactuator command), applying one or more low-order interpolation to thepreliminary actuator command (or another command derived from thepreliminary actuator command), or the like or any combination thereof.Examples of suitable filters include digital filters, low pass filters,Butterworth filters, or the like or any combination thereof. Examples ofsuitable algorithms include an auto-regressive moving-average algorithm,or the like. In some embodiments, the set of spectrally-complementaryactuator commands can be generated as described in one or more of U.S.Pat. Nos. 5,751,585, 6,706,999, and 8,392,002, each of which isincorporated herein by reference in its entirety. It should berecognized, however, that the set of spectrally-complementary actuatorcommands can be generated according to techniques described in one ormore of U.S. Pat. Nos. 5,638,267, 5,988,411, 9,261,872 or in one or moreof U.S. Patent App. Pub. Nos. 2014/0330424, 2015/0158121, 2015/0241865,each of which is incorporated herein by reference in its entirety.

Although the set of spectrally-complementary processed actuator commandshas been described as including only two spectrally-complementaryactuator commands, it should be recognized that the set ofspectrally-complementary actuator commands can include any number ofspectrally-complementary actuator commands (e.g., 3, 4, 5, 6, 7, 8,etc.). The number of spectrally-complementary actuator commands in a setof spectrally-complementary actuator commands corresponding to a commonaxis can be equal to the number of redundant actuators in the set ofredundant actuators capable of positioning or imparting movement alongthe common axis.

B. Embodiments Concerning Actuator Commands for Axially-ComplementaryMulti-Axis Machine Tools, Generally

Sometimes, a rotary actuator command (e.g., a B-axis actuator command)to be issued to a rotary actuator (e.g., a B-axis actuator) containsnon-negligible frequency content that exceeds the threshold frequency ofthe rotary actuator. Accordingly, and in an embodiment in which themulti-axis machine tool is an axially-complementary multi-axis machinetool, a set of axially-complementary actuator commands may be output toa set of axially-complementary actuators, which includes the rotaryactuator, to compensate for the limited bandwidth capability of therotary actuator. For example, a set of axially-complementary actuatorcommands may include an axially-complementary rotary actuator commandhaving a frequency content that does not exceed the threshold frequencyof the rotary actuator, and at least one axially-complementary linearactuator command. The axially-complementary rotary actuator command maybe output to the rotary actuator, and the at least oneaxially-complementary linear actuator command may be output one or morecorresponding linear actuators (i.e., that are in the same set ofaxially-complementary actuators as the rotary actuator).

The set of axially-complementary actuator commands can be generated inany suitable manner. For example, the set of axially-complementaryactuator commands can be generated by processing a rotary actuatorcommand (e.g., describing a position or movement along a single rotaryaxis, such as the B-axis) obtained or otherwise derived from a computerfile or a computer program as discussed above. In this case, such arotary actuator command is also referred to as a “a rotary actuatorcommand,” and has a frequency content spanning a preliminary range offrequencies. The preliminary range of frequencies may includenon-negligible frequency content at one or more frequencies that exceedsthe threshold frequency of the rotary actuator. The preliminary rotaryactuator command may be processed to create a set ofaxially-complementary actuator commands that includes at least oneaxially-complementary rotary actuator command and at least oneaxially-complementary linear actuator command.

In some embodiments, the processing of the preliminary rotary actuatorcommand can include applying one or more suitable filters to thepreliminary rotary actuator command (or another command derived from thepreliminary rotary actuator command), by modifying the preliminaryrotary actuator command (or another command derived from the preliminaryrotary actuator command) according to one or more suitable algorithms,by decimating the preliminary rotary actuator command (or anothercommand derived from the preliminary rotary actuator command), applyingone or more low-order interpolation to the preliminary rotary actuatorcommand (or another command derived from the preliminary rotary actuatorcommand), or the like or any combination thereof. Examples of suitablefilters include digital filters, low pass filters, Butterworth filters,or the like or any combination thereof. Examples of suitable algorithmsinclude an auto-regressive moving-average algorithm, or the like.

II. Controlling a Multi-Axis Machine Tool Having Axially-ComplementaryActuators and Redundant Linear Actuators

FIG. 1 is a block diagram schematically illustrating a control system100 for controlling a multi-axis machine tool which, according to oneembodiment, includes a relatively-low bandwidth X-axis actuator 102, arelatively-low bandwidth Y-axis actuator 104, a relatively-low bandwidthZ-axis actuator 106, a relatively-high bandwidth X-axis actuator 108, arelatively-high bandwidth Y-axis actuator 110, a relatively-highbandwidth Z-axis actuator 112, a B-axis actuator 114 and a C-axisactuator 116. A legend illustrating the spatial relationships betweenthe axes discussed herein is illustrated at 118.

The relatively-low and relatively-high bandwidth X-axis actuators 102and 108, respectively, constitute a set of redundant actuators (i.e., aset of redundant X-axis actuators). Likewise, a set of redundantactuators is constituted by each pair of the relatively-low andrelatively-high bandwidth Y-axis actuators 104 and 110, respectively(i.e., a set of redundant Y-axis actuators), and the relatively-low andrelatively-high bandwidth Z-axis actuators 106 and 112, respectively(i.e., a set of redundant Z-axis actuators). Although the illustratedembodiment describes a multi-axis machine tool having a set of redundantlinear actuators constituted by only two linear actuators, it will beappreciated that the multi-axis machine tool may be further equippedwith one or more additional linear actuators arranged or configured toimpart movement along any of the X-, Y- and Z-axes, so that any set ofredundant actuators may include three or more linear actuators.

In one embodiment, no actuator within any set of redundant actuators isattached to, or moved by another actuator in the same set of redundantactuators. For example, the relatively-high bandwidth X-axis actuator108 is not attached to, nor is it moved by, the relatively-low bandwidthX-axis actuator 102. In another embodiment, however, at least oneactuator within a set of redundant actuators may be attached to, andmoved by, another actuator in the same set of redundant actuators. Insuch an embodiment, a relatively-low bandwidth actuator in a set ofredundant actuators may move, or may be moved by, a relatively-highbandwidth actuator in the set of redundant actuators.

In one embodiment, the B-axis actuator 114, considered with one or moreactuators within the set of redundant X-axis actuators and/or one ormore within the set of redundant Z-axis actuators, constitutes a set ofaxially-complementary actuators. In another embodiment, the C-axisactuator 116, considered with one or more actuators within the set ofredundant X-axis actuators and/or one or more within the set ofredundant Y-axis actuators, constitutes a set of axially-complementaryactuators In yet another embodiment, the B-axis actuator 114 and theC-axis actuator 116, considered with one or more actuators within theset of redundant X-axis actuators, one or more actuators within the setof redundant Y-axis actuators and/or one or more within the set ofredundant Z-axis actuators, constitutes a set of axially-complementaryactuators.

In the illustrated embodiment, the multi-axis machine tool does notinclude any A-axis actuator. It should be recognized, however, that themulti-axis machine tool may include an A-axis actuator and that theembodiments discussed herein may be adapted to control the A-axisactuator as discussed herein.

A. Embodiments Concerning the Workpiece Positioning Assembly

In one embodiment, the relatively-low bandwidth X-axis actuator 102,relatively-low bandwidth Y-axis actuator 104, relatively-low bandwidthZ-axis actuator 106, B-axis actuator 114 and C-axis actuator 116 may beincorporated as part of a “workpiece positioning assembly” configured toposition or otherwise move a workpiece along the X-axis, Y-axis, Z-axis,B-axis, C-axis, or any combination thereof, either simultaneously ornon-simultaneously. For example, each of the relatively-low bandwidthX-axis actuator 102, relatively-low bandwidth Y-axis actuator 104,relatively-low bandwidth Z-axis actuator 106, B-axis actuator 114 andC-axis actuator 116 may include one or more components (e.g., stages,fixtures, chucks, rails, bearings, brackets, clamps, straps, bolts,screws, pins, retaining rings, ties, etc., not shown) to permit one ormore of such actuators to be mounted to or otherwise mechanicallycoupled to one another. In this case, the relatively-low bandwidthZ-axis actuator 106 may be mounted on the relatively-low bandwidthX-axis actuator 102 (e.g., so as to be movable by the relatively-lowbandwidth X-axis actuator 102), the relatively-low bandwidth Y-axisactuator 104 may be mounted on the relatively-low bandwidth Z-axisactuator 106 (e.g., so as to be movable by the relatively-low bandwidthZ-axis actuator 106, relatively-low bandwidth X-axis actuator 102, orany combination thereof), the B-axis actuator 114 may be mounted on therelatively-low bandwidth Y-axis actuator 104 (e.g., so as to be movableby the relatively-low bandwidth Y-axis actuator 104, relatively-lowbandwidth Z-axis actuator 106, relatively-low bandwidth X-axis actuator102, or any combination thereof) and the C-axis actuator 116 may bemounted on the B-axis actuator 114 (e.g., so as to be movable by theB-axis actuator 114, relatively-low bandwidth Y-axis actuator 104,relatively-low bandwidth Z-axis actuator 106, relatively-low bandwidthX-axis actuator 102, or any combination thereof). FIG. 2 schematicallyillustrates the exemplary arrangement of actuators in a workpiecepositioning assembly (e.g., workpiece positioning assembly 200), asdiscussed above. In other embodiments, however, one or more of theactuators within the workpiece positioning assembly may be differentarranged in any other suitable or desirable manner. It should also berecognized that one or more of the relatively-low bandwidth X-axisactuator 102, relatively-low bandwidth Y-axis actuator 104,relatively-low bandwidth Z-axis actuator 106, B-axis actuator 114 andC-axis actuator 116 may be omitted from the workpiece positioningassembly, as suitable or if otherwise desired.

In view of the above, it should be recognized that each of therelatively-low bandwidth X-axis actuator 102, relatively-low bandwidthY-axis actuator 104, relatively-low bandwidth Z-axis actuator 106,B-axis actuator 114 and C-axis actuator 116 may be provided as one ormore stages (e.g., direct-drive stages, lead-screw stages, ball-screwstages, belt-driven stages, etc.), each driven by one or more hydrauliccylinders, one or more pneumatic cylinders, one or more servo motors,one or more voice-coil actuators, one or more piezoelectric actuators,one or more electrostrictive elements, or the like or any combinationthereof. Moreover, any of the relatively-low bandwidth X-axis actuator102, relatively-low bandwidth Y-axis actuator 104, relatively-lowbandwidth Z-axis actuator 106, B-axis actuator 114 and C-axis actuator116 may be configured to provide continuous or stepped (incremental)motion.

A workpiece fixture (not shown) may be mechanically coupled to theworkpiece positioning assembly (e.g., at the relatively-low bandwidthC-axis actuator 116) to hold, retain, carry, etc., the workpiece in anysuitable or desired manner. Accordingly, the workpiece can be coupled tothe workpiece positioning assembly by way of the fixture. The workpiecefixture may be provided as one or more chucks or other clamps, clips, orother fastening devices (e.g., bolts, screws, pins, retaining rings,straps, ties, etc.), to which the workpiece can be clamped, fixed, held,secured or be otherwise supported.

B. Embodiments Concerning the Tool Tip Positioning Assembly

In one embodiment, the relatively-high bandwidth X-axis actuator 108,relatively-high bandwidth Y-axis actuator 110 and the relatively-highbandwidth Z-axis actuator 112 may be incorporated within a “tool tippositioning assembly” configured to position or otherwise move a tooltip associated with the multi-axis machine tool along the X-axis,Y-axis, Z-axis, or any combination thereof, either simultaneously ornon-simultaneously. It should be recognized, however, that one or moreof the relatively-high bandwidth X-axis actuator 108, relatively-highbandwidth Y-axis actuator 110 and the relatively-high bandwidth Z-axisactuator 112 may be omitted from the tool tip positioning assembly, assuitable or if otherwise desired. Generally, and depending upon themechanism that is used to effect the processing of a workpiece (i.e.,the “tool” to be used), the tool tip positioning assembly can becharacterized as a “serial tool tip positioning assembly,” as a“parallel tool tip positioning assembly” or a “hybrid tool tippositioning assembly” (e.g., combining characteristics unique to theserial tool tip positioning assembly and the parallel tool tippositioning assembly).

i. Embodiments Concerning the Serial Tool Tip Positioning Assembly

In one embodiment, a serial tool tip positioning assembly can beemployed when the tool to be used is a mechanical structure (e.g., arouter bit, a drill bit, a tool bit, a grinding bit, a blade, etc.).Within a serial tool tip positioning assembly, each of therelatively-high bandwidth X-axis actuator 108, relatively-high bandwidthY-axis actuator 110 and relatively-high bandwidth Z-axis actuator 112may include one or more components (e.g., stages, fixtures, chucks,rails, bearings, brackets, clamps, straps, bolts, screws, pins,retaining rings, ties, etc., not shown) to permit one or more of suchactuators to be mounted or otherwise mechanically coupled to oneanother. In this case, the relatively-high bandwidth Y-axis actuator 110may be mounted on the relatively-high bandwidth X-axis actuator 108(e.g., so as to be movable by the relatively-high bandwidth X-axisactuator 108) and the relatively-high bandwidth Z-axis actuator 112 maybe mounted on the relatively-high bandwidth Y-axis actuator 110 (e.g.,so as to be movable by the relatively-high bandwidth Y-axis actuator110, relatively-high bandwidth X-axis actuator 108, or any combinationthereof). In other embodiments, however, one or more of the actuatorswithin the serial tool tip positioning assembly may be differentarranged in any other suitable or desirable manner. The serial tool tippositioning assembly is typically employed when the tool to be usedincludes a mechanical structure (e.g., a router bit, a drill bit, a toolbit, a grinding bit, a blade, etc.). The serial tool tip positioningassembly can also be employed when the tool to be used includes a streamor jet of matter (e.g., water, air, sand or other abrasive particles,paint, metallic powder, or the like or any combination thereof) ejectedfrom, for example, a nozzle, head, etc.

In view of the above, it should be recognized that each of therelatively-high bandwidth X-axis actuator 108, relatively-high bandwidthY-axis actuator 110 and relatively-high bandwidth Z-axis actuator 112 inthe serial tool tip positioning assembly may be provided as one or morelinear stages (e.g., direct-drive stages, lead-screw stages, ball-screwstages, belt-driven stages, etc.), each driven by one or more hydrauliccylinders, one or more pneumatic cylinders, one or more servo motors,one or more voice-coil actuators, one or more piezoelectric actuators,one or more electrostrictive elements, or the like or any combinationthereof. Moreover, any of the relatively-high bandwidth X-axis actuator108, relatively-high bandwidth Y-axis actuator 110 and relatively-highbandwidth Z-axis actuator 112 in the serial tool tip positioningassembly may be configured to provide continuous or stepped(incremental) motion.

A tool fixture (not shown) may be mechanically coupled to the serialtool tip positioning assembly (e.g., at the relatively-high bandwidthZ-axis actuator 112) to hold, retain, carry, etc., a mechanicalstructure (e.g., a router bit, a drill bit, a tool bit, a grinding bit,a blade, etc.) in any suitable or desired manner. Accordingly, themechanical structure can be coupled to the serial tool tip positioningassembly by way of a tool fixture, which may be provided as one or morechucks or other clamps, clips, or other fastening devices (e.g., bolts,screws, pins, retaining rings, straps, ties, etc.). If the tool to beused includes a stream or jet of matter (e.g., water, air, sand or otherabrasive particles, paint, metallic powder, or the like or anycombination thereof, provided by a source of water, air, sand,particles, paint, powder, or the like or any combination thereof, as isknown in the art), then the nozzle, head, etc., from which the stream orjet is ejected can be characterized as the tool fixture.

ii. Embodiments Concerning the Parallel Tool Tip Positioning Assembly

In one embodiment, a parallel tool tip positioning assembly can beemployed when the tool to be used is a beam of directed energy, etc.Within a parallel tool tip positioning assembly, the nature andconfiguration of one or more of the relatively-high bandwidth X-axisactuator 108, relatively-high bandwidth Y-axis actuator 110 andrelatively-high bandwidth Z-axis actuator 112 will depend upon the toolto be used.

For example, if the tool to be used is a beam of electrons or ions(e.g., generated from an electron or ion source, not shown, as is knownin the art), the relatively-high bandwidth X-axis actuator 108, therelatively-high bandwidth Y-axis actuator 110 and the relatively-highbandwidth Z-axis actuator 112 may be provided as one or more magneticlenses, cylinder lenses, Einzel lenses, quadropole lenses, multipolelenses, or the like or any combination thereof.

In another example, if the tool to be used is laser light (e.g.,manifested as a series of pulses, as a continuous or quasi-continuousbeam of laser light, or any combination thereof, generated from one ormore laser sources as is known in the art), each of the relatively-highbandwidth X-axis actuator 108 and the relatively-high bandwidth Y-axisactuator 110 may be provided as a galvanometer-driven mirror system, afast-steering mirror system (e.g., a mirror actuated by a voice-coilmotor, a piezoelectric actuator, an electrostrictive actuator, amagnetostrictive actuator, etc.), microelectromechanical systems (MEMS)mirror system, an adaptive optical (AO) system, an electro-opticdeflector (EOD) system, an acousto-optic deflector (AOD) system (e.g.,arranged and configured to diffract laser light along an axis, such asthe X- or Y-axis, in response to an applied RF signal), or the like orany combination thereof. If the tool is to be provided as a focused beamof laser light (in which case the “tool tip” is a region of the focusedbeam having a fluence sufficiently high to process the workpiece), thena relatively high-bandwidth Z-axis actuator 112 can be provided as oneor more AOD systems (e.g., arranged and configured to diffract laserlight along two axes, such as the X- and Y-axes, in response to one ormore applied, chirped RF signals), a fixed focal-length lens disposed inpath in which the laser light propagates (i.e., a “propagation path”)that is coupled to an actuator (e.g., a voice-coil) configured to movethe lens along the propagation path, a variable-focal length lens (e.g.,a zoom lens, or a so-called “liquid lens” incorporating technologiescurrently offered by COGNEX, VARIOPTIC, etc.) disposed in thepropagation path, or the like or any combination thereof.

FIG. 3 schematically illustrates one embodiment of a parallel tool tippositioning assembly configured to position or otherwise move a tool tipassociated with a focused beam of laser light. Referring to FIG. 3, theparallel tool tip positioning assembly 300 optionally includes a scanlens 302 (e.g., f-theta lens, a telecentric lens, an axicon lens, etc.)configured to focus a beam of laser light propagating along apropagation path 304, which has been deflected by a firstgalvanometer-driven mirror system (provided here as the relatively-highbandwidth X-axis actuator 108) and a second galvanometer-driven mirrorsystem (provided here as the relatively-high bandwidth Y-axis actuator110). As illustrated, the first galvanometer-driven mirror systemincludes a mirror 306 a coupled to a motor 308 a (e.g., via a shaft),which is configured to rotate the mirror 306 a about the Y-axis (e.g.,so as to permit deflection of the beam of laser light along the X-axis).Similarly, the second galvanometer-driven mirror system includes amirror 306 b coupled to a motor 308 b (e.g., via a shaft), which isconfigured to rotate the mirror 306 b about the X-axis (e.g., so as topermit deflection of the beam of laser light along the Y-axis). As arelatively-high bandwidth Z-axis actuator 112, the parallel tool tippositioning assembly 300 may also include a lens coupled to an actuator(e.g., a voice-coil, not shown), which is configured to move the lensalong the propagation path 304 in the directions indicated by thedouble-arrows at 310.

In some cases, the functionality provided by two or more of therelatively-high bandwidth X-axis actuator 108, the relatively-highbandwidth Y-axis actuator 110 and the relatively-high bandwidth Z-axisactuator 112 can be provided by the same system. For example, systemssuch as a fast-steering mirror system, a MEMS mirror system, a AOsystem, etc., can be driven to deflect laser light along the X- andY-axes. Systems such as a MEMS mirror system, a AO system, and a pair ofAOD systems (e.g., one AOD system arranged and configured to diffractlaser light along the X-axis and another AOD system arranged andconfigured to diffract laser light along the Y-axis), can be driven todeflect laser light along the X- and Y-axes and to change the size of aspot illuminated by the laser light at the tooling region (thuseffectively changing the position of the beam waist of focused laserlight delivered to the workpiece during processing along the Z-axis).Such systems can, therefore, be characterized as a relatively-highbandwidth X-axis actuator 108, a relatively-high bandwidth Y-axisactuator 110, a relatively-high bandwidth Z-axis actuator 112, or anycombination thereof, depending upon the manner in which they areprovided and driven.

iii. Embodiments Concerning the Hybrid Tool Tip Positioning Assembly

In one embodiment, a hybrid tool tip positioning assembly can beemployed when the tool to be used is a beam of directed energy, etc. Forexample, when provided as a system such as a galvanometer-driven mirrorsystem, a fast-steering mirror system (e.g., a mirror actuated by avoice-coil motor, a piezoelectric actuator, an electrostrictiveactuator, a magnetostrictive actuator, etc.), MEMS mirror system, an AOsystem, an EOD system, an AOD system, etc., the relatively-highbandwidth X-axis actuator 108 and/or the relatively-high bandwidthY-axis actuator 110 may be mounted to or otherwise mechanically coupledto the relatively-high bandwidth Z-axis actuator 112 (e.g., so as to bemovable by the relatively-high bandwidth Z-axis actuator 112). In thisexample, the relatively-high bandwidth Z-axis actuator 112 may beprovided as one or more stages (e.g., direct-drive stages, lead-screwstages, ball-screw stages, belt-driven stages, etc.), each driven by oneor more hydraulic cylinders, one or more pneumatic cylinders, one ormore servo motors, one or more voice-coil actuators, one or morepiezoelectric actuators, one or more electrostrictive elements, or thelike or any combination thereof.

In another example, when provided as a system such as a MEMS mirrorsystem, an AO system, a pair of AOD systems, etc., the relatively-highbandwidth Z-axis actuator 112 may be mounted to or otherwisemechanically coupled to one of the relatively-high bandwidth X-axisactuator 108 and the relatively-high bandwidth Y-axis actuator 110which, in turn, may be mounted to or otherwise mechanically coupled tothe other of the relatively-high bandwidth X-axis actuator 108 and therelatively-high bandwidth Y-axis actuator 110. In this example, each ofthe relatively-high bandwidth X-axis actuator 108 and therelatively-high bandwidth Y-axis actuator 110 may be provided as one ormore stages (e.g., direct-drive stages, lead-screw stages, ball-screwstages, belt-driven stages, etc.), each driven by one or more hydrauliccylinders, one or more pneumatic cylinders, one or more servo motors,one or more voice-coil actuators, one or more piezoelectric actuators,one or more electrostrictive elements, or the like or any combinationthereof.

C. Additional Comments Concerning the Workpiece and Tool Tip PositioningAssemblies

Notwithstanding the above, it should be recognized that any of therelatively-low bandwidth actuators described above as being incorporatedwithin the workpiece positioning assembly (e.g., to position and/or movethe workpiece) can, additionally or alternatively, be incorporated aspart of the tool tip positioning assembly (e.g., to position and/or movethe tool tip). Further, and notwithstanding the above, it should berecognized that the workpiece positioning assembly can, in someembodiments, be provided as any 5-axis workpiece positioning/movingassembly currently available in the industry, such as those found in theAGIECHARMILLES laser product line offered by GF MACHINING SOLUTIONSMANAGEMENT SA, the MICROLUTION ML-D offered by MICROLUTION, INC., theLASERTEC product line offered by DMG MORI AKIENGESELLSHAFT/DMG MORICOMPANY LIMITED. In one embodiment, the workpiece positioning assemblycan be provided as described in FIGS. 4A-4C of aforementioned U.S. Pat.No. 8,392,002. Likewise, and notwithstanding the above, it should berecognized that the tool tip positioning assembly can, in someembodiments, be provided as any laser scanning or focusing assemblycurrently available in the industry, such as those found in the 3-axisscanning systems offered by CAMBRIDGE TECHNOLOGY, the MINISCAN,SUPERSCAN, AXIALSCAN and FOCUSSHIFER product lines offered by RAYLASE,the MD-series 3-axis hybrid laser marker product line offered by KEYENCECORP., the WOMBAT, ANTEATER, ELEPHANT, PRECESSION ELEPHANT andPRECESSION ELEPHANT 2 series of scan heads offered by ARGES GmbH, theLASERTEC product line offered by DMG MORI AKIENGESELLSHAFT/DMG MORICOMPANY LIMITED. Further, and notwithstanding the above, it should berecognized that the tool tip positioning assembly can, in someembodiments, be provided as described in any of U.S. Pat. No. 8,121,717or International Patent Pub. No. WO 2014/009150 A1, each of which isincorporated herein by reference in its entirety, or as described inFIGS. 5A-5C of aforementioned U.S. Pat. No. 8,392,002.

Having exemplarily described certain components of one embodiment of amulti-axis machine tool above, an algorithm for processing andgenerating actuator commands to control the multi-axis machine tool, asimplemented by the control system 100, now be discussed in greaterdetail with reference to FIG. 1.

D. Embodiments Concerning Processing of Actuator Commands

Referring to FIG. 1, the control system 100 receives preliminaryactuator commands (e.g., obtained or otherwise derived from a computerfile or a computer program as discussed above). As shown, thepreliminary actuator commands include preliminary linear actuatorcommands: preliminary X-axis actuator command (i.e., X_prelim.),preliminary Y-axis actuator command (i.e., Y_prelim.), and preliminaryZ-axis actuator command (i.e., Z_prelim.); and preliminary rotaryactuator commands: preliminary B-axis actuator command (i.e., B_prelim.)and preliminary C-axis actuator command (i.e., C_prelim.). In oneembodiment, at least one of the preliminary actuator commands will havenon-negligible frequency content that exceeds the threshold frequency ofa corresponding relatively-low bandwidth actuator. For example, thepreliminary X-axis actuator command (i.e., X_prelim.) may havenon-negligible frequency content that exceeds the threshold frequency ofa corresponding relatively-low bandwidth X-axis actuator 102, thepreliminary Y-axis actuator command (i.e., Y_prelim.) may havenon-negligible frequency content that exceeds the threshold frequency ofa corresponding relatively-low bandwidth Y-axis actuator 104, thepreliminary Z-axis actuator command (i.e., Z_prelim.) may havenon-negligible frequency content that exceeds the threshold frequency ofa corresponding relatively-low bandwidth Z-axis actuator 106, thepreliminary B-axis actuator command (i.e., B_prelim.) may havenon-negligible frequency content that exceeds the threshold frequency ofa corresponding relatively-low bandwidth B-axis actuator 114, thepreliminary C-axis actuator command (i.e., C_prelim.) may havenon-negligible frequency content that exceeds the threshold frequency ofa corresponding relatively-low bandwidth C-axis actuator 116, or anycombination thereof. It should be recognized, however, that any or allof the aforementioned preliminary actuator commands may havenon-negligible frequency content that is at or below the thresholdfrequency of a corresponding relatively-low bandwidth actuator.

The preliminary actuator commands are processed to generate a first setof intermediate linear actuator commands. For example, an inversekinematic transform 118 is applied to the preliminary X-axis actuatorcommand (i.e., X_prelim.), preliminary Y-axis actuator command (i.e.,Y_prelim.), preliminary Z-axis actuator command (i.e., Z_prelim.),preliminary B-axis actuator command (i.e., B_prelim.) and preliminaryC-axis actuator command (i.e., C_prelim.) to generate the first set ofintermediate linear actuator commands. The first set of intermediatelinear actuator commands includes a first intermediate X-axis actuatorcommand (i.e., X0), a first intermediate Y-axis actuator command (i.e.,Y0) and a first intermediate Z-axis actuator command (i.e., Z0). Theinverse kinematic transform can be applied according to the followingequation:

$\begin{bmatrix}{X\; 0} \\{Y\; 0} \\{Z\; 0}\end{bmatrix} = {\begin{bmatrix}{\cos\left( {{C\_ prelim}.} \right)} & {\sin\left( {{C\_ prelim}.} \right)} & 0 \\{- {\sin\left( {{C\_ prelim}.} \right)}} & {\cos\left( {{C\_ prelim}.} \right)} & 0 \\0 & 0 & 1\end{bmatrix} \cdot {\quad{\left\lbrack \begin{matrix}{\cos\left( {{B\_ prelim}.} \right)} & 0 & {- {\sin\left( {{B\_ prelim}.} \right)}} \\0 & 1 & 0 \\{\sin\left( {{B\_ prelim}.} \right)} & 0 & {\cos\left( {{B\_ prelim}.} \right)}\end{matrix} \right\rbrack \cdot \begin{bmatrix}{{X\_ prelim}.} \\{{Y\_ prelim}.} \\{{Z\_ prelim}.}\end{bmatrix}}}}$As shown in the equation above, the inverse kinematic transform computesthe first set of intermediate linear actuator commands at a fixedreference rotary position. In the example given above, the fixedreference rotary position is 0 degrees.

The preliminary rotary actuator commands (e.g., preliminary B-axisactuator command, B_prelim., and preliminary C-axis actuator command,C_prelim.) are subjected to a processing stage 120 to generate one ormore processed rotary actuator commands. In the illustrated embodiment,B_low signifies a processed B-axis actuator command and C_low signifiesa processed C-axis actuator command, both of which are generated atprocessing stage 120. At processing stage 120, a preliminary rotaryactuator command can be subjected to one or more processes that, forexample, includes applying one or more suitable filters to thepreliminary rotary actuator command, modifying the preliminary rotaryactuator command according to one or more suitable algorithms,decimating the preliminary rotary actuator command, applying one or morelow-order interpolation to the preliminary rotary actuator command, orthe like or any combination thereof. Examples of suitable filtersinclude digital filters, low pass filters, Butterworth filters, or thelike or any combination thereof. Examples of suitable algorithms includean auto-regressive moving-average algorithm, or the like. A processedrotary actuator command corresponds to a preliminary rotary actuatorcommand, but does not have any (or has only negligible amounts of)frequency content that exceeds the threshold frequency of acorresponding rotary actuator. Thus, the processed B-axis actuatorcommand (i.e., B_low) does not have any (or has only negligible amountsof) frequency content that exceeds the threshold frequency of therelatively-low bandwidth B-axis actuator 114, the processed C-axisactuator command (i.e., C_low) does not have any (or has only negligibleamounts of) frequency content that exceeds the threshold frequency ofthe relatively-low bandwidth C-axis actuator 116, etc. As used herein,each of the above-noted processed rotary actuator commands is alsoreferred to herein as “low-frequency content rotary actuator commands”or, more generally, “low-frequency content actuator commands.”

The first set of intermediate linear actuator commands and the processedrotary commands are processed to generate a second set of intermediatelinear actuator commands. For example, a forward kinematic transform 122is applied to the first intermediate X-axis actuator command (i.e., X0),first intermediate Y-axis actuator command (i.e., Y0), firstintermediate Z-axis actuator command (i.e., Z0), the processed B-axisactuator command (i.e., B_low) and the processed C-axis actuator command(i.e., C_low) to generate the second set of intermediate linear actuatorcommands. The second set of intermediate linear actuator commandsincludes a second intermediate X-axis actuator command (i.e., X1), asecond intermediate Y-axis actuator command (i.e., Y1) and a secondintermediate Z-axis actuator command (i.e., Z1). The forward kinematictransform can be applied according to the following equation:

$\begin{bmatrix}{X\; 1} \\{Y\; 1} \\{Z\; 1}\end{bmatrix} = {\quad{\left\lbrack \begin{matrix}{\cos({B\_ low})} & 0 & {\sin({B\_ low})} \\0 & 1 & 0 \\{- {\sin({B\_ low})}} & 0 & {\cos({B\_ low})}\end{matrix} \right\rbrack \cdot \begin{bmatrix}{\cos({C\_ low})} & {- {\sin({C\_ low})}} & 0 \\{\sin({C\_ low})} & {\cos({C\_ low})} & 0 \\0 & 0 & 1\end{bmatrix} \cdot \begin{bmatrix}{X\; 0} \\{Y\; 0} \\{Z\; 0}\end{bmatrix}}}$

The second set of intermediate linear actuator commands (e.g., secondintermediate X-axis actuator command, X1, second intermediate Y-axisactuator command, Y1, and second intermediate Z-axis actuator command,Z1) are subjected to a processing stage 124 to generate a first set ofprocessed linear actuator commands. The first set of processed linearactuator commands can include a low-frequency content X-axis actuatorcommand (i.e. X_low), a low-frequency content Y-axis actuator command(i.e. Y_low) and a low-frequency content Z-axis actuator command (i.e.Z_low). At processing stage 124, a second intermediate linear actuatorcommand can be subjected to one or more processes that, for example,includes applying one or more suitable filters to the secondintermediate linear actuator command, modifying the second intermediatelinear actuator command according to one or more suitable algorithms,decimating the second intermediate linear actuator command, applying oneor more low-order interpolation to the second intermediate linearactuator command, or the like or any combination thereof. Examples ofsuitable filters include digital filters, low pass filters, Butterworthfilters, or the like or any combination thereof. Examples of suitablealgorithms include an auto-regressive moving-average algorithm, or thelike. A processed linear actuator command corresponds to a preliminarylinear actuator command, but does not have any (or has only negligibleamounts of) frequency content that exceeds the threshold frequency of acorresponding linear actuator. Thus, the low-frequency content X-axisactuator command (i.e., X_low) does not have any (or has only negligibleamounts of) frequency content that exceeds the threshold frequency ofthe relatively-low bandwidth X-axis actuator 102, the low-frequencycontent Y-axis actuator command (i.e., Y_low) does not have any (or hasonly negligible amounts of) frequency content that exceeds the thresholdfrequency of the relatively-low bandwidth Y-axis actuator 104 and thelow-frequency content Z-axis actuator command (i.e., Z_low) does nothave any (or has only negligible amounts of) frequency content thatexceeds the threshold frequency of the relatively-low bandwidth Z-axisactuator 106.

The low-frequency content linear actuator commands (e.g., X_low, Y_lowand Z_low) are subtracted from corresponding actuator commands in thesecond set of intermediate linear actuator commands to generate a secondset of processed linear actuator commands. The second set of processedlinear actuator commands can include a high-frequency content X-axisactuator command (i.e. X_high), a high-frequency content Y-axis actuatorcommand (i.e. Y_high) and a high-frequency content Z-axis actuatorcommand (i.e. Z_high). For example, the low-frequency content X-axisactuator command (i.e., X_low) can be subtracted from the secondintermediate X-axis actuator command (i.e., X1) to yield thehigh-frequency content X-axis actuator command (i.e. X_high), thelow-frequency content Y-axis actuator command (i.e., Y_low) can besubtracted from the second intermediate Y-axis actuator command (i.e.,Y1) to yield the high-frequency content Y-axis actuator command (i.e.Y_high) and the low-frequency content Z-axis actuator command (i.e.,Z_low) can be subtracted from the second intermediate Z-axis actuatorcommand (i.e., Z1) to yield the high-frequency content Z-axis actuatorcommand (i.e. Z_high). The subtraction discussed above may beimplemented at a summer 126, which can be implemented in any suitable ordesired manner known in the art. Typically, the high-frequency contentX-axis actuator command (i.e., X_high) has a frequency content thatexceeds the threshold frequency of the relatively-low bandwidth X-axisactuator 102, but that is at or below the threshold frequency of therelatively-high bandwidth X-axis actuator 108. Likewise, thehigh-frequency content Y-axis actuator command (i.e., Y_high) has afrequency content that exceeds the threshold frequency of therelatively-low bandwidth Y-axis actuator 104, but that is at or belowthe threshold frequency of the relatively-high bandwidth Y-axis actuator110; and the high-frequency content Z-axis actuator command (i.e.,Z_high) has a frequency content that exceeds the threshold frequency ofthe relatively-low bandwidth Z-axis actuator 106, but that is at orbelow the threshold frequency of the relatively-high bandwidth Z-axisactuator 112.

Ultimately, and as shown, the low-frequency content X-axis actuatorcommand (i.e., X_low), the low-frequency content Y-axis actuator command(i.e., Y_low), the low-frequency content Z-axis actuator command (i.e.,Z_low), the high-frequency content X-axis actuator command (i.e.,X_high), the high-frequency content Y-axis actuator command (i.e.,Y_high), the high-frequency content Z-axis actuator command (i.e.,Z_high), the low-frequency content B-axis actuator command (i.e., B_low)and the low-frequency content C-axis actuator command (i.e., C_low) areoutput, respectively, to the relatively-low bandwidth X-axis actuator102, relatively-low bandwidth Y-axis actuator 104, relatively-lowbandwidth Z-axis actuator 106, relatively-high bandwidth X-axis actuator108, relatively-high bandwidth Y-axis actuator 110, relatively-highbandwidth Z-axis actuator 112, B-axis actuator 114 and C-axis actuator116.

Although not illustrated, the control system 100 may include one or moredelay buffers to compensate for any processing or transport delayscaused by the generation of the low-frequency content X-axis actuatorcommand (i.e., X_low), the low-frequency content Y-axis actuator command(i.e., Y_low), the low-frequency content Z-axis actuator command (i.e.,Z_low), the high-frequency content X-axis actuator command (i.e.,X_high), the high-frequency content Y-axis actuator command (i.e.,Y_high), the high-frequency content Z-axis actuator command (i.e.,Z_high), the low-frequency content B-axis actuator command (i.e., B_low)and the low-frequency content C-axis actuator command (i.e., C_low)and/or the output of any of these actuator commands to their respectiveactuator, so that the actuator commands can be output in a synchronizedor otherwise coordinated manner. Upon outputting the actuator commandsin a synchronized or otherwise coordinated manner, the actuatorsessentially react or respond in a similarly synchronized or otherwisecoordinated manner to impart relative movement between the tool tip andthe workpiece in manner that moves the tooling region along a path thatmatches or otherwise corresponds to the desired trajectory.

Generally, the control system 100 may be implemented by one or morecontrollers that are communicatively coupled (e.g., over one or morewired or wireless communications links, such as USB, Ethernet, Firewire,Wi-Fi, RFID, NFC, Bluetooth, Li-Fi, or the like or any combinationthereof) to one or more components of the multi-axis machine tool (e.g.,one or more of the aforementioned actuators, one or more componentscontrolling or otherwise affecting an operation of the tool, or the likeor any combination thereof). Generally, a controller can becharacterized as including one or more processors configured to processand generate the aforementioned actuator commands upon executinginstructions. A processor can be provided as a programmable processor(e.g., including one or more general purpose computer processors,microprocessors, digital signal processors, or the like or anycombination thereof) configured to execute the instructions.Instructions executable by the processor(s) may be implemented software,firmware, etc., or in any suitable form of circuitry includingprogrammable logic devices (PLDs), field-programmable gate arrays(FPGAs), field-programmable object arrays (FPOAs), application-specificintegrated circuits (ASICs)—including digital, analog and mixedanalog/digital circuitry—or the like, or any combination thereof.Execution of instructions can be performed on one processor, distributedamong processors, made parallel across processors within a device oracross a network of devices, or the like or any combination thereof. Inone embodiment, a controller includes tangible media such as computermemory, which is accessible (e.g., via one or more wired or wirelesscommunications links) by the processor. As used herein, “computermemory” includes magnetic media (e.g., magnetic tape, hard disk drive,etc.), optical discs, volatile or non-volatile semiconductor memory(e.g., RAM, ROM, NAND-type flash memory, NOR-type flash memory, SONOSmemory, etc.), etc., and may be accessed locally, remotely (e.g., acrossa network), or a combination thereof. Generally, the instructions may bestored as computer software (e.g., executable code, files, instructions,etc., library files, etc.), which can be readily authored by artisans,from the descriptions provided herein, e.g., written in C, C++, VisualBasic, Java, Python, Tel, Perl, Scheme, Ruby, etc. Computer software iscommonly stored in one or more data structures conveyed by computermemory.

Although not shown, one or more drivers (e.g., RF drivers, servodrivers, line drivers, power sources, etc.) are communicatively coupledto an input of one or more of the aforementioned actuators, one or morecomponents controlling or otherwise affecting an operation of the tool,or the like or any combination thereof. Each driver typically includesan input to which the controller is communicatively coupled. Thecontroller is thus operative to generate one or more control signals(e.g., actuator commands, tool control commands, etc.) which can betransmitted to the input(s) of one or more drivers associated with oneor more components of the multi-axis machine tool. Upon receiving acontrol signal, a driver typically causes an electric current to besupplied to the component to which it is coupled (e.g., actuator, tool,etc.) in order to operate the component and produce an effect thatcorresponds to the command signal. Thus, components such as theaforementioned actuators, the tool, etc., are responsive to commandsignals (e.g., actuator commands, tool control commands, etc.) generatedand output by the controller.

In view of the above, it will be appreciated that the control system 100can be used to continuously provide synchronized and coordinatedoperation of the relatively-low bandwidth actuators (e.g., having arelatively large range of motion) and relatively-high bandwidthactuators of the multi-axis machine tool (e.g., having a relativelysmall range of motion) to position or otherwise move a tooling regionrelative to the workpiece (e.g., in a manner that accurately andreliably corresponds to a desired trajectory). While the control system100 can accurately position the tooling region relative to the workpiece(e.g., according to the desired trajectory), it is possible that thetooling angle ultimately manifested at any point during workpieceprocessing can deviate from a reference tooling angle (e.g., asspecified, either explicitly or implicitly, by the trajectory).Generally, the deviation in tooling angle arises if a high-frequencycontent linear actuator command has frequency content exceeding thethreshold frequency of a rotary actuator that is not part of a set ofredundant rotary actuators. Such tooling angle deviations can, however,be pre-calculated (e.g., based on the characteristics of the actuatorsin the multi-axis machine tool, based on the desired trajectory, etc.)and compensated for (either completely or partially) during workpieceprocessing (e.g., by adjusting the speed with which the tooling regionis moved relative to the workpiece, by adjusting the processing at oneor more of processing stages 120 and 124).

III. Controlling a Multi-Axis Machine Tool Having Axially-ComplementaryActuators and Redundant Rotary Actuators

FIG. 4 is a block diagram schematically illustrating a control system400 for controlling a multi-axis machine tool which, according to oneembodiment, includes actuators such as those exemplarily discussed abovewith respect to FIGS. 1 to 3. In the current embodiment, however, themulti-axis machine tool may additionally include a B-axis actuator 402,a C-axis actuator 404, or the B-axis actuator 402 and the C-axisactuator 404. The threshold frequency of the B-axis actuator 402 ishigher than the threshold frequency of the B-axis actuator 114.Accordingly, the B-axis actuator 114 can also be referred to herein as a“relatively-low bandwidth B-axis actuator” and the B-axis actuator 402can also be referred to herein as a “relatively-high bandwidth B-axisactuator.” Likewise, the threshold frequency of the C-axis actuator 404is higher than the threshold frequency of the C-axis actuator 116.Accordingly, the C-axis actuator 116 can also be referred to herein as a“relatively-low bandwidth C-axis actuator” and the C-axis actuator 404can also be referred to herein as a “relatively-high bandwidth B-axisactuator.”

The relatively-low and relatively-high bandwidth B-axis actuators 114and 402, respectively, constitute a set of redundant actuators (i.e., aset of redundant B-axis actuators). Likewise, a set of redundantactuators is constituted by each pair of the relatively-low andrelatively-high bandwidth C-axis actuators 116 and 404, respectively(i.e., a set of redundant C-axis actuators). Although the illustratedembodiment describes a multi-axis machine tool having a set of redundantactuators constituted by only two rotary actuators, it will beappreciated that the multi-axis machine tool may be further equippedwith one or more additional rotary actuators arranged or configured toimpart movement along any of the B- or C-axes, so that any set ofredundant actuators may include three or more rotary actuators.

In one embodiment, the relatively-high bandwidth B-axis actuator 402,considered with one or more actuators within the set of redundant X-axisactuators and/or one or more within the set of redundant Z-axisactuators, constitutes a set of axially-complementary actuators. Inanother embodiment, the relatively-high bandwidth C-axis actuator 404,considered with one or more actuators within the set of redundant X-axisactuators and/or one or more within the set of redundant Y-axisactuators, constitutes a set of axially-complementary actuators. In yetanother embodiment, the relatively-high bandwidth B-axis and C-axisactuators 402 and 404, respectively, considered with one or moreactuators within the set of redundant X-axis actuators, one or moreactuators within the set of redundant Y-axis actuators and/or one ormore within the set of redundant Z-axis actuators, constitutes a set ofaxially-complementary actuators.

A. Embodiments Concerning the Tool Tip Positioning Assembly

In one embodiment, one or both of the relatively-high bandwidth B-axisactuator 402 and the relatively-high bandwidth C-axis actuator 404 maybe incorporated within a tool tip positioning assembly as exemplarilydescribed above, so that the resulting tool tip positioning assembly canbe configured to position or otherwise move a tool tip associated withthe multi-axis machine tool along B-axis and/or the C-axis in additionto the X-axis, Y-axis, Z-axis, or any combination thereof, eithersimultaneously or non-simultaneously. It should be recognized, however,that one or more of the relatively-high bandwidth X-axis actuator 108,relatively-high bandwidth Y-axis actuator 110, relatively-high bandwidthZ-axis actuator 112, relatively-high bandwidth B-axis actuator 402 andthe relatively-high bandwidth C-axis actuator 404 may be omitted fromthe tool tip positioning assembly, as suitable or if otherwise desired.As mentioned above, a tool tip positioning assembly including one orboth of the relatively-high bandwidth B-axis actuator 402 and therelatively-high bandwidth C-axis actuator 404 can be characterized as a“serial tool tip positioning assembly,” as a “parallel tool tippositioning assembly” or a “hybrid tool tip positioning assembly” (e.g.,combining characteristics unique to the serial tool tip positioningassembly and the parallel tool tip positioning assembly).

i. Embodiments Concerning the Serial Tool Tip Positioning Assembly

Within a serial tool tip positioning assembly (e.g., as describedabove), any of the relatively-high bandwidth B-axis actuator 402 and therelatively-high bandwidth C-axis actuator 404 may include one or morecomponents (e.g., stages, fixtures, chucks, rails, bearings, brackets,clamps, straps, bolts, screws, pins, retaining rings, ties, etc., notshown) to permit the relatively-high bandwidth B-axis actuator 402 andthe relatively-high bandwidth C-axis actuator 404 to be mounted orotherwise mechanically coupled to one another or to any of theaforementioned actuators included within the serial tool tip.

Each of the relatively-high bandwidth B-axis actuator 402 andrelatively-high bandwidth C-axis actuator 404 in the serial tool tippositioning assembly may be provided as one or more rotary stages (e.g.,direct-drive stages, lead-screw stages, ball-screw stages, belt-drivenstages, etc.), each driven by one or more hydraulic cylinders, one ormore pneumatic cylinders, one or more servo motors, one or morevoice-coil actuators, one or more piezoelectric actuators, one or moreelectrostrictive elements, or the like or any combination thereof.Moreover, any of the relatively-high bandwidth B-axis actuator 402 andrelatively-high bandwidth C-axis actuator 404 in the serial tool tippositioning assembly may be configured to provide continuous or stepped(incremental) motion.

A tool fixture (not shown) may be mechanically coupled to the serialtool tip positioning assembly at the relatively-high bandwidth Z-axisactuator 112 (as discussed above), at the relatively-high bandwidthB-axis actuator 402 or at the relatively-high bandwidth C-axis actuator404 to hold, retain, carry, etc., a mechanical structure (e.g., a routerbit, a drill bit, a tool bit, a grinding bit, a blade, etc.), or otherstructure from which a stream or jet of matter is ejected (e.g., anozzle, head, etc.), in any suitable or desired manner.

ii. Embodiments Concerning the Parallel Tool Tip Positioning Assembly

In one embodiment, the parallel tool tip positioning assembly includes arelatively-high bandwidth C-axis actuator 404, in addition to one ormore of the relatively-high bandwidth X-axis actuator 108, therelatively-high bandwidth Y-axis actuator 110, and the relatively-highbandwidth Z-axis actuator 112, as exemplarily described above. In thiscase, the configuration of the relatively-high bandwidth C-axis actuator404 will depend upon the tool to be used. Example embodiments discussedbelow relate to instances where the tool to be used includes laser light(e.g., manifested as a series of pulses, as a continuous orquasi-continuous beam of laser light, or any combination thereof,generated from one or more laser sources as is known in the art).

When the tool to be used is laser light, the laser light can be directed(e.g., along the aforementioned propagation path) to illuminate aportion of the workpiece at or near the tooling region. When viewed onthe surface of the workpiece, or when otherwise viewed in a plane thatis orthogonal to a portion of the propagation path intersecting theworkpiece at the tooling region, the spatial intensity distribution oflaser light at the illuminated portion (also referred to as a “spot”)can be characterized as having a circular shape or a non-circular shape.Examples of non-circular shapes include elliptical shapes, triangularshapes, square shapes, rectangular shapes, irregular shapes, etc.Circular or non-circular spot shapes can be created using one or morebeam-cropping apertures, diffractive optical elements, AOD systems,prisms, lenses, etc. (which may be included as part of the multi-axismachine tool and disposed within the propagation path), in any suitablemanner known in the art, or can be created as result of the beam oflaser light illuminating a surface of the workpiece at the toolingregion that is either non-planar or is not orthogonal to the portion ofthe propagation path intersecting the workpiece at the tooling region,or any combination thereof.

In view of the above, the relatively-high bandwidth C-axis actuator 404can be disposed in the propagation path at any suitable or desiredlocation that is optically “upstream” or optically “downstream” of anyof the relatively-high bandwidth X-axis actuator 108 or therelatively-high bandwidth Y-axis actuator 110 in the parallel tool tippositioning assembly (e.g., the parallel tool tip positioning assembly300). In one embodiment, the relatively-high bandwidth C-axis actuator404 can be provided as a microelectromechanical systems (MEMS) mirrorsystem, an adaptive optical (AO) system, or any combination thereof, andbe configured to change the shape of the spatial intensity distributionrelative to the propagation path in a manner that effectively changesthe orientation of the spatial intensity distribution of the incidentbeam of laser light. In another embodiment, the relatively-highbandwidth C-axis actuator 404 can be provided as one or more prisms,which may be rotated (e.g., about an axis along which the propagationpath extends) or otherwise moved by an actuator to change theorientation of the spatial energy distribution relative to thepropagation path. In one embodiment, the relatively-high bandwidthC-axis actuator 404 can be provided as described in U.S. Pat. No.6,362,454, which is incorporated herein by reference. In yet anotherembodiment, the relatively-high bandwidth C-axis actuator 404 can beprovided as one or more AOD systems (e.g., arranged and configured todiffract laser light along two axes, such as the X- and Y-axes, inresponse to one or more applied, chirped RF signals).

In some cases, the functionality provided by the relatively-highbandwidth C-axis actuator 404 and one or more of the relatively-highbandwidth X-axis actuator 108, the relatively-high bandwidth Y-axisactuator 110 and the relatively-high bandwidth Z-axis actuator 112 canbe provided by the same system. For example, systems such as a MEMSmirror system, a AO system, and a pair of AOD systems (e.g., one AODsystem arranged and configured to diffract laser light along the X-axisand another AOD system arranged and configured to diffract laser lightalong the Y-axis), can be driven to deflect laser light along the X- andY-axes, to change the size of a spot illuminated by the laser light atthe tooling region (thus effectively changing the position of the beamwaist of focused laser light delivered to the workpiece duringprocessing along the Z-axis), and to change the orientation of thespatial energy distribution of a beam of laser light relative to thepropagation path. Such systems can, therefore, be characterized as arelatively-high bandwidth X-axis actuator 108, a relatively-highbandwidth Y-axis actuator 110, a relatively-high bandwidth Z-axisactuator 112, a relatively-high bandwidth C-axis actuator 404, or anycombination thereof, depending upon the manner in which they areprovided and driven.

iii. Embodiments Concerning the Hybrid Tool Tip Positioning Assembly

In one embodiment, a hybrid tool tip positioning assembly includes arelatively-high bandwidth B-axis actuator 402, in addition to one ormore of the relatively-high bandwidth X-axis actuator 108, therelatively-high bandwidth Y-axis actuator 110, the relatively-highbandwidth Z-axis actuator 112, and the relatively-high bandwidth C-axisactuator 404 as exemplarily described above in connection with theserial tool tip positioning assembly. In this case, the relatively-highbandwidth B-axis actuator 402 is attached to and movable by one or moreof the aforementioned actuators so as to be movable along the X-axis,Y-axis, Z-axis, C-axis or any combination thereof, either simultaneouslyor non-simultaneously. It will be appreciated that the configuration ofthe relatively-high bandwidth B-axis actuator 402 will depend upon thetool to be used. Example embodiments discussed below relate to instanceswhere the tool to be used includes laser light (e.g., manifested as aseries of pulses, as a continuous or quasi-continuous beam of laserlight, or any combination thereof, generated from one or more lasersources as is known in the art). When the tool to be used is laserlight, the laser light can be directed (e.g., along the aforementionedpropagation path) to illuminate a portion of the workpiece at or nearthe tooling region.

Referring now to FIG. 5, the relatively-high bandwidth B-axis actuator402 can include a first AOD system 500 arranged and configured todiffract laser light along one axis (e.g., along the X-axis) in responseto an applied RF signal, and a second AOD system 502 arranged anddisposed optically “downstream” of the first AOD system 500 andconfigured to diffract laser light along another axis (e.g., along theY-axis) in response to an applied RF signal. The relatively-highbandwidth B-axis actuator 402 can include additional components, such ashalf-wave plates 501 and 503, and a polarizing beam splitter 505. Whendriven, the first AOD system 500 and the second AOD system 502 candeflect position or otherwise move an incident beam of laser light 510to any number of positions (e.g., as indicated by deflected beams 512and 514) within a scan range associated with the first AOD system 500and second AOD system 502. Deflected beams, such as deflected beams 512and 514, can be characterized by a deflection angle measured relative tothe incident beam of laser light 510.

The relatively-high bandwidth B-axis actuator 402 can also include a setof lenses (e.g., relay lens 504 and scan lens 506) disposed opticallydownstream of the second AOD system 502. Relay lens 504 is used totransform the deflection angle of any deflected beams (e.g., deflectedbeams 512 and 514) to laterally displaced beams (e.g., laterallydisplaced beams 512′ and 514′) on the scan lens 506. The scan lens 506then transforms any laterally displaced beams (e.g., laterally displacedbeams 512′ and 514′) to incident beams (e.g., incident beams 512″ and514″) which are delivered to the workpiece (illustrated here at 508). Asillustrated, incident beams 512″ and 514″ illuminate the workpiece atthe same (or at least substantially the same) spot or tooling region,but at different tooling angles.

Based on the construction of the relatively-high bandwidth B-axisactuator 402 described above, it should be recognized that the speedwith which the tooling angle of an incident beam of laser light can bechanged corresponds to the refresh rate of the first and second AODsystems 500 and 502. The maximum tooling angle is proportional to theAOD deflection range and the focal length of the relay lens 504, and isinversely-proportional to the focal length of scan lens 506. Thedistance between the relay lens 504 and the scan lens 506 can beadjusted to ensure that different incident beams can be delivered to thesame tooling region on the workpiece 508.

B. Additional Comments Concerning the Tool Tip Positioning Assembly

Notwithstanding the above, it should be recognized that any of therelatively-low bandwidth actuators described above as being incorporatedwithin the workpiece positioning assembly (e.g., to position and/or movethe workpiece) can, additionally or alternatively, be incorporated aspart of a tool tip positioning assembly (e.g., to position and/or movethe tool tip) that includes the relatively-high bandwidth B-axisactuator 402 or the relatively-high bandwidth C-axis actuator 404.Further, and notwithstanding the above, it should be recognized that thetool tip positioning assembly can, in some embodiments, be provided asany laser scanning or focusing assembly currently available in theindustry, such as those found in the PRECESSION ELEPHANT and PRECESSIONELEPHANT 2 series of scan heads offered by ARGES GmbH. Further, andnotwithstanding the above, it should be recognized that the tool tippositioning assembly can, in some embodiments, be provided as describedin International Patent Pub. No. WO 2014/009150 A1, which isincorporated herein by reference in its entirety.

C. Embodiments Concerning Processing of Actuator Commands

Generally, the control system 400 may be implemented by one or morecontrollers as exemplarily described with respect to the control system100, and operation of the control system 400 is the same as theoperation of the control system 100 discussed above with respect to FIG.1 with the exception of some additional processes and operationsintroduced to account for the presence of the relatively-high bandwidthB-axis actuator 402, the relatively-high bandwidth C-axis actuator 404,or a combination thereof. These additional processes and operations willnow be described below.

The low-frequency content rotary actuator commands (e.g., B_low andC_low) are subtracted corresponding actuator commands in the preliminaryrotary actuator commands (e.g., preliminary B-axis actuator command,B_prelim., and preliminary C-axis actuator command, C_prelim.) togenerate one or more further-processed rotary actuator commands. Forexample, the low-frequency content B-axis actuator command (i.e., B_low)can be subtracted from the preliminary B-axis actuator command (i.e.,B_prelim.) to yield, as a further-processed rotary actuator command, ahigh-frequency content B-axis actuator command (i.e. B_high). Similarly,the low-frequency content C-axis actuator command (i.e., C_low) can besubtracted from the preliminary C-axis actuator command (i.e.,C_prelim.) to yield, as a further-processed rotary actuator command, ahigh-frequency content C-axis actuator command (i.e. C_high). Thesubtraction discussed above may be implemented at a summer 406, whichcan be implemented in any suitable or desired manner known in the art.Typically, the high-frequency content B-axis actuator command (i.e.,B_high) has a frequency content that exceeds the threshold frequency ofthe relatively-low bandwidth B-axis actuator 114, but that is at orbelow the threshold frequency of the relatively-high bandwidth B-axisactuator 402. Likewise, the high-frequency content C-axis actuatorcommand (i.e., C_high) has a frequency content that exceeds thethreshold frequency of the relatively-low bandwidth C-axis actuator 116,but that is at or below the threshold frequency of the relatively-highbandwidth C-axis actuator 404.

Ultimately, and as shown, the high-frequency content B-axis actuatorcommand (i.e., B_high), the high-frequency content C-axis actuatorcommand (i.e., C_high), or any combination thereof, are output torespective one of the relatively-high bandwidth B-axis actuator 402 andthe relatively-high bandwidth C-axis actuator 404. Although notillustrated, the control system 400 may include one or more delaybuffers to compensate for any processing or transport delays caused bythe generation of the high-frequency content B-axis actuator command(i.e., B_high), the high-frequency content C-axis actuator command(i.e., C_high) and/or the output of any of these actuator commands totheir respective actuator, so that the illustrated actuator commands canbe output in a synchronized or otherwise coordinated manner. Uponoutputting the actuator commands in a synchronized or otherwisecoordinated manner, the actuators essentially react or respond in asimilarly synchronized or otherwise coordinated manner to impartrelative movement between the tool tip and the workpiece in manner thatmoves the tooling region along a path that matches or otherwisecorresponds to the desired trajectory.

The foregoing is illustrative of embodiments and examples of theinvention, and is not to be construed as limiting thereof. Although afew specific embodiments and examples have been described with referenceto the drawings, those skilled in the art will readily appreciate thatmany modifications to the disclosed embodiments and examples, as well asother embodiments, are possible without materially departing from thenovel teachings and advantages of the invention. Accordingly, all suchmodifications are intended to be included within the scope of theinvention as defined in the claims. For example, skilled persons willappreciate that the subject matter of any sentence, paragraph, exampleor embodiment can be combined with subject matter of some or all of theother sentences, paragraphs, examples or embodiments, except where suchcombinations are mutually exclusive. The scope of the present inventionshould, therefore, be determined by the following claims, withequivalents of the claims to be included therein.

What is claimed is:
 1. A method for controlling a multi-axis machinetool configured to process a workpiece using a tool, the multi-axismachine tool comprising a rotary actuator configured to impart relativemovement between the tool and the workpiece about a first axis, a firstlinear actuator configured to impart relative movement between the tooland the workpiece along a second axis, a second linear actuatorconfigured to impart relative movement between the tool and theworkpiece along a third axis, and a controller operatively coupled tothe rotary actuator, the first linear actuator and the second linearactuator, the method comprising: receiving, at the controller, apreliminary rotary actuator command, the preliminary rotary actuatorcommand having frequency content exceeding a bandwidth of the rotaryactuator; and at the controller: generating a processed rotary actuatorcommand based, at least in part, on the preliminary rotary actuatorcommand, the processed rotary actuator command having frequency contentwithin the bandwidth of the rotary actuator; generating a first linearactuator command and a second linear actuator command based, at least inpart, on the processed rotary actuator command; outputting the processedrotary actuator command to the rotary actuator; outputting the firstlinear actuator command to the first linear actuator; and outputting thesecond linear actuator command to the second linear actuator.
 2. Themethod of claim 1, wherein the second axis is orthogonal to the firstaxis.
 3. The method of claim 1, wherein the third axis is orthogonal tothe second axis.
 4. The method of claim 1, wherein generating theprocessed rotary actuator command comprises filtering the preliminaryrotary actuator command.
 5. The method of claim 1, wherein generatingthe first linear actuator command and the second linear actuator commandcomprises: generating a set of intermediate linear actuator commandsbased on the preliminary rotary actuator command and at least onepreliminary linear actuator command; and processing the set ofintermediate linear actuator commands based, at least in part, on theprocessed rotary actuator command.
 6. The method of claim 1, furthercomprising processing the workpiece with the tool while impartingrelative movement about the first axis.
 7. The method of claim 6,wherein processing the workpiece with the tool comprises directing laserlight to the workpiece.
 8. A multi-axis machine tool, comprising: a toolconfigured to process a workpiece; a first rotary actuator configured toimpart relative movement between the tool and the workpiece about afirst axis; a first linear actuator configured to impart relativemovement between the tool and the workpiece along a second axis; asecond linear actuator configured to impart relative movement betweenthe tool and the workpiece along a third axis; and a controlleroperatively coupled to the first rotary actuator, the first linearactuator and the second linear actuator, the controller configured to:receive a preliminary rotary actuator command, the preliminary rotaryactuator command having frequency content exceeding a bandwidth of therotary actuator; generate a processed rotary actuator command based, atleast in part, on the received preliminary rotary actuator command, theprocessed rotary actuator command having frequency content within abandwidth of the rotary actuator; generate a first linear actuatorcommand and a second linear actuator command based, at least in part, onthe processed rotary actuator command; output the processed rotaryactuator command to the rotary actuator; output the first linearactuator command to the first linear actuator; and output the secondlinear actuator command to the second linear actuator.
 9. The multi-axismachine tool of claim 8, further comprising a second rotary actuatorconfigured to impart relative movement between the tool and theworkpiece about the first axis, wherein a bandwidth of the second rotaryactuator is higher than a bandwidth of the first rotary actuator. 10.The multi-axis machine tool of claim 8, further comprising a thirdlinear actuator configured to impart relative movement between the tooland the workpiece along at least one selected from the group consistingof the first axis, the second axis and the third axis.
 11. Themulti-axis machine tool of claim 8, wherein the tool includes awaterjet.
 12. The multi-axis machine tool of claim 8, further comprisinga laser source and the tool includes a focused beam of laser light. 13.The multi-axis machine tool of claim 12, further comprising a thirdlinear actuator configured to impart relative movement between the tooland the workpiece along at least one selected from the group consistingof the first axis and the second axis.
 14. The multi-axis machine toolof claim 12, further comprising a third linear actuator configured toimpart relative movement between a beam waist of the focused beam oflaser light and the workpiece along a propagation path in which the beamof laser light propagates.
 15. The multi-axis machine tool of claim 14,wherein the third linear actuator includes at least one selected fromthe group consisting of an acousto-optic deflector (AOD) system, amicroelectromechanical systems (MEMS) mirror system and an adaptiveoptical (AO) system.
 16. A multi-axis machine tool, comprising: a lasersource configured to generate a beam of laser light; a tool tippositioning assembly including a scan lens configured to focus the beamof laser light thereby producing a focused beam of laser light having abeam waist, wherein the tool tip positioning assembly further includesat least one actuator to move the scan lens along at least one axis andat least one positioner arranged between the laser source and the scanlens, wherein the at least one positioner is operative to move the beamwaist along at least one axis, wherein the tool tip positioning assemblyincludes at least one selected from the group consisting of anacousto-optic deflector (AOD) system, a microelectromechanical systems(MEMS) mirror system and an adaptive optical (AO) system; a workpiecepositioning assembly configured to position the workpiece in a pathalong which the focused beam of laser light is propagatable, wherein theworkpiece positioning assembly is further operative to rotate theworkpiece about at least one axis and translate the workpiece along atleast one axis; and a controller operatively coupled to the lasersource, the workpiece positioning assembly, and the tool tip positioningassembly and configured to control an operation of the laser source, theworkpiece positioning assembly, and the tool tip positioning assembly.17. The multi-axis machine tool of claim 16, wherein the at least onepositioner is operative to translate the beam waist along at least oneaxis.
 18. The multi-axis machine tool of claim 16, wherein the at leastone positioner is operative to rotate the beam waist about at least oneaxis.
 19. The multi-axis machine tool of claim 1, wherein the at leastone positioner includes an AOD system.
 20. The multi-axis machine toolof claim 19, wherein the AOD system includes: a first AOD systemoperative to diffract the beam of laser light along a first axis; and asecond AOD system operative to diffract the beam of laser light along asecond axis orthogonal to the first axis.
 21. The multi-axis machinetool of claim 20, wherein the AOD system includes a relay lens disposedoptically downstream of the second AOD system and operative to transforma deflection angle of the path into a laterally-displaced path.